/***************************************************************************
 
    Toast+UIView.h
    Toast
    Version 0.1

    Copyright (c) 2011 Charles Scalesse.
 
    Permission is hereby granted, free of charge, to any person obtaining a
    copy of this software and associated documentation files (the
    "Software"), to deal in the Software without restriction, including
    without limitation the rights to use, copy, modify, merge, publish,
    distribute, sublicense, and/or sell copies of the Software, and to
    permit persons to whom the Software is furnished to do so, subject to
    the following conditions:
 
    The above copyright notice and this permission notice shall be included
    in all copies or substantial portions of the Software.
 
    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
    OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
    IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
    CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
    TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
    SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
***************************************************************************/
/*
 -(IBAction)buttonPressed:(id)sender {
 
 switch ([sender tag]) {
 
 case 0:
 //Make toast
 [self.view makeToast:@"This is a piece of toast."];
 break;
 
 case 1:
 //Make toast with a title
 [self.view makeToast:@"This is a piece of toast with a title." 
 duration:3.0
 position:@"top"
 title:@"Toast Title"];
 
 break;
 
 case 2:
 //Make toast with an image
 [self.view makeToast:@"This is a piece of toast with an image." 
 duration:3.0
 position:@"center"
 image:[UIImage imageNamed:@"toast.png"]];
 break;
 
 case 3:
 //Make toast with an image & title
 [self.view makeToast:@"This is a piece of toast with a title & image"
 duration:3.0
 position:@"bottom"
 title:@"Toast Title"
 image:[UIImage imageNamed:@"toast.png"]];
 break;
 
 case 4:;
 //Show a custom view as toast
 UIView *customView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 80, 400)];
 [customView setBackgroundColor:[UIColor orangeColor]];
 
 [self.view showToast:customView
 duration:2.0
 position:@"center"];
 
 [customView release];
 break;
 
 case 5:;
 //Show an imageView as toast, on center at point (110,110)
 UIImageView *toastView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"toast.png"]];
 
 [self.view showToast:toastView 
 duration:2.0
 position:[NSValue valueWithCGPoint:CGPointMake(110, 110)]]; //CGPoint is a C struct and therefore must be wrapped in an NSValue object.
 
 [toastView release];
 break;
 
 case 6:
 //Make toast in a subview
 [_yellowView makeToast:@"This is a piece of toast in the center of the yellow subview."
 duration:2.0
 position:@"center"];
 break;
 
 default:break;
 
 }
 
 }
**/

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

#define TOAST_POSITION_TOP     @"top"
#define TOAST_POSITION_TOPx    @"topx"
#define TOAST_POSITION_CENTER  @"center"
#define TOAST_POSITION_BUTTOM  @"bottom"
#define TOAST_POSITION_CUSTOM(x,y) [NSValue valueWithCGPoint:CGPointMake(x, y)]

#define TOAST_DRRATION_SHORT 1.0
#define TOAST_DRRATION_MIDDLE 2.0
#define TOAST_DRRATION_LONG 3.0



@interface UIView (Toast)

//each makeToast method creates a view and displays it as toast
-(void)makeToast:(NSString *)message;
-(void)makeToast:(NSString *)message duration:(float)interval;
-(void)makeToast:(NSString *)message position:(id)point;
-(void)makeToast:(NSString *)message duration:(float)interval position:(id)point;
-(void)makeToast:(NSString *)message duration:(float)interval position:(id)point title:(NSString *)title;
-(void)makeToast:(NSString *)message duration:(float)interval position:(id)point title:(NSString *)title image:(UIImage *)image;
-(void)makeToast:(NSString *)message duration:(float)interval position:(id)point image:(UIImage *)image;

//the showToast method displays an existing view as toast
-(void)showToast:(UIView *)toast;
-(void)showToast:(UIView *)toast duration:(float)interval position:(id)point;

@end
